# 数据库字段修复脚本
# 执行此脚本前，请确保 MySQL 在 PATH 中，或者修改下面的 mysql 路径

Write-Host "`n=== 数据库字段修复 ===" -ForegroundColor Cyan
Write-Host "正在修复 logs.data 和 blogs.content 字段类型...`n" -ForegroundColor Yellow

# 执行 SQL 修复
$sql1 = "ALTER TABLE \`logs\` MODIFY COLUMN \`data\` mediumtext COMMENT '附加数据（JSON）';"
$sql2 = "ALTER TABLE \`blogs\` MODIFY COLUMN \`content\` longtext NOT NULL COMMENT '博客内容（富文本HTML）';"

Write-Host "执行 SQL 1: 修复 logs.data 字段..." -ForegroundColor Green
mysql -u root -p portal-server -e $sql1

if ($LASTEXITCODE -eq 0) {
    Write-Host "✓ logs.data 字段修复成功" -ForegroundColor Green
} else {
    Write-Host "✗ logs.data 字段修复失败，请检查 MySQL 连接和权限" -ForegroundColor Red
    exit 1
}

Write-Host "`n执行 SQL 2: 修复 blogs.content 字段..." -ForegroundColor Green
mysql -u root -p portal-server -e $sql2

if ($LASTEXITCODE -eq 0) {
    Write-Host "✓ blogs.content 字段修复成功" -ForegroundColor Green
} else {
    Write-Host "✗ blogs.content 字段修复失败，请检查 MySQL 连接和权限" -ForegroundColor Red
    exit 1
}

Write-Host "`n=== 修复完成 ===" -ForegroundColor Cyan
Write-Host "现在可以运行: npm run init-db" -ForegroundColor Yellow
Write-Host "这样导出的 schema.sql 就会包含正确的字段类型了。`n" -ForegroundColor Yellow

